/*
  将下面异步代码使用 Promise 的方法改进
  尽量用看上去像同步代码的方式
  setTimeout(function () {
    var a = 'hello'
    setTimeout(function () {
      var b = 'lagou'
      setTimeout(function () {
        var c = 'I ♥ U'
        console.log(a + b +c)
      }, 10)
    }, 10)
  }, 10)
*/
new Promise((resolve) => {
  setTimeout(() => {
    var a = "hello";
    resolve([a]);
  }, 1000);
})
  .then((arr) => {
    return new Promise((resolve) => {
      setTimeout(() => {
        var b = "lagou";
        resolve([...arr, b]);
      }, 1000);
    });
  })
  .then((arr) => {
    return new Promise((resolve) => {
      setTimeout(() => {
        var c = "I ♥ U";
        resolve([...arr, c]);
      }, 1000);
    });
  })
  .then((arr) => {
    const [a, b, c] = arr;
    console.log(a + b + c);
  });
